package com.sanji.sjmallmanager.image;

import android.content.Context;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.sanji.sjmallapp.R;

/**
 * Created by zsf on 16-12-13.
 */
public class GlideManager {
    //利用glide加载图片
    public static void glideImage(Context context, String url, ImageView imageView) {
        Glide.with(context).load(url)
                //当加载网络图片时，由于加载过程中图片未能及时显示，此时可能需要设置等待时的图片，通过placeHolder()方法
                .placeholder(R.mipmap.img_default)
                //当加载图片失败时，通过error(Drawable drawable)方法设置加载失败后的图片显示：
                .error(R.mipmap.img_half_default)
                //使用centerCrop是利用图片图填充ImageView设置的大小，如果ImageView的Height是match_parent则图片就会被拉伸填充,短的一边撑满，centorCrop()是长的一边撑满
                .centerCrop()
                //定义磁盘缓存行为，DiskCacheStrategy.SOURCE只缓存原始图片，DiskCacheStrategy.ALL 缓存所有版本的图像（默认行为），
                // DiskCacheStrategy.RESULT 仅仅缓存最终的图像，即，降低分辨率后的（或者是转换后的），DiskCacheStrategy.NONE 什么都不缓存
                .diskCacheStrategy(DiskCacheStrategy.SOURCE)
                //true设置跳过内存缓存，false为设置内存缓存(默认行为)
//                .skipMemoryCache(true)
                .into(imageView);
    }
}
